#ifndef LeAssert_h__
#define LeAssert_h__

#include "Logging.h"
#ifdef _MSC_VER
#define LE_ASSERT(condition, msg, ...) \
	if(!(condition))\
	{\
		LeOutputDebugString(msg,  ##__VA_ARGS__);\
		__debugbreak();\
	}
#else
#include <csignal>
#define LE_ASSERT(condition, msg, ...)					\
	do {																					\
	  if (!(condition)) {													\
	    LeOutputDebugString(msg, ##__VA_ARGS__);	\
			std::raise(SIGTRAP);											\
		}																						\
	} while (false)
#endif

#endif // LeAssert_h__
